﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Crosland.Automotriz.Core;

namespace Crosland.Automotriz.Facade.Interface
{
     public interface iFacadeCanibalizacion
    {
         IEnumerable<Object> listarCanibalizacionCab(int intIdEstado);
         IEnumerable<Object> listarPorEstadoPendiente(int idEstado);

         IEnumerable<Object> ListarStockAlmacenDet(String strNro_lote, int intTop);
         IEnumerable<Object> listarAnios();
         bool InsertarCanibalizacion(T_LOG_CANIBALIZACION_CAB Obj);
         bool Modificar(T_LOG_CANIBALIZACION_CAB Obj);
         IEnumerable<Object> ListarCanibalizacionMovimiento();
         List<TD_MATERIAL_EN> ListaMaterialStock_mas_Transito(String strFiltro, int intTotalRegistros);
         bool InsertarT_LOG_CANIBALIZACION_MOVIMIENTO_CAB(T_LOG_CANIBALIZACION_MOVIMIENTO_CAB Obj);
         bool ModificarT_LOG_CANIBALIZACION_MOVIMIENTO_CAB(T_LOG_CANIBALIZACION_MOVIMIENTO_CAB Obj);
         bool InsertarT_LOG_CANIBALIZACION_MOV_DET(T_LOG_CANIBALIZACION_MOV_DET Obj);
         bool ModificarT_LOG_CANIBALIZACION_MOV_DET(T_LOG_CANIBALIZACION_MOV_DET Obj);
         int UltimoGenerado();
         IEnumerable<object> ListaTipoMovimiento();
         IEnumerable<Object> ListarPendientes(String strNroChasis);
         bool ActualizaEstado_LOG_CANIBALIZACION_CAB(int intEstado, int intIdLogCanibalizacionCab);
         bool ActualizaEstadoArmado(int id_estado, int intIdLogCanibalizacionCab);
         T_LOG_CANIBALIZACION_MOVIMIENTO_CAB ListarPorIdCab(int intIdCab);
         List<T_LOG_CANIBALIZACION_MOV_DET_EN> ListaPorIdMovCab(int intidMovCab);
         bool eliminaT_LOG_CANIBALIZACION_MOV_DET(int intIdLogCanbMovCab);
         List<T_LOG_CANIBALIZACION_CAB_EN> ListarCanibalizacionPorIdCab(int intIdCab);
         IEnumerable<Object> ListaEstado();
         IEnumerable<Object> ListaEstadoSolicitado(); 
         IEnumerable<Object> listarCorreo();
         List<T_LOG_CANIBALIZACION_MOVIMIENTO_CAB_EN> listarPorIdLogCanibalizacionCab(int ID_LOG_CANIBALIZACION_CAB);
         List<TD_MATERIAL_EN> ListaMaterialesMovimientoEntrada(int intIdLogCanibalizacionCab, int intIdOrg, int intTotalRegistros);
         int Total_Saldo(int IdLogCanibalizacionCab);
         Nullable<DateTime> fecha_canibalizacion(int IdLogCanibalizacionCab);
         Nullable<DateTime> fecha_armado(int IdLogCanibalizacionCab);
         int ActualizarFechaCanibalizacion(int intIdLogCanibalizacionCab, DateTime? fecha_canibalizacion);
         int ActualizarFechaArmado(int intIdLogCanibalizacionCab, DateTime? fecha_armado);
          IEnumerable<Object> ListaTecnico();
     }
}
